extension break freaa
authorØyvind Kolås <ok@src.gnome.org>
Sun, 28 Aug 2005 00:07:13 +0000 (00:07 +0000)
committerØyvind Kolås <ok@src.gnome.org>
Sun, 28 Aug 2005 00:07:13 +0000 (00:07 +0000)
ChangeLog
extensions/util.h [new file with mode: 0644]

index aa384e7de021016d38c0b803bdad2a1ed7ae251b..3b4c1d04408ae55b89b4aa97565d105de6a74b21 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -43,6 +43,7 @@
        * extensions/CIE-Lab.c: moved here from BablBase, contains cpercep.c
        and cpercep.h
        * extensions/naive-CMYK.c: moved here from BablBase.
+       * extensions/util.h: convenience functions for babl extensions.
 
        * babl/babl-core.[ch]: double and RGBA originating from BablBase.
 
diff --git a/extensions/util.h b/extensions/util.h
new file mode 100644 (file)
index 0000000..a330531
--- /dev/null
@@ -0,0 +1,48 @@
+/* babl - dynamically extendable universal pixel conversion library.
+ * Copyright (C) 2005, Øyvind Kolås.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General
+ * Public License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place, Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+#ifndef _UTIL_H
+#define _UTIL_H
+
+#include <assert.h>
+#include <math.h>
+
+#define BABL_PLANAR_SANITY  \
+  {                         \
+    assert(src_bands>0);    \
+    assert(dst_bands>0);    \
+    assert(src);            \
+    assert(*src);           \
+    assert(dst);            \
+    assert(*dst);           \
+    assert(n>0);            \
+    assert(*src_pitch);     \
+  } 
+
+#define BABL_PLANAR_STEP          \
+  {                               \
+    int i;                        \
+    for (i=0; i< src_bands; i++)  \
+      src[i]+=src_pitch[i];       \
+    for (i=0; i< dst_bands; i++)  \
+      dst[i]+=dst_pitch[i];       \
+  }
+
+#endif
+